package a.j;

import a.c.ab;
import a.c.bb;
import a.c.cb;
import a.c.d;
import a.c.e;
import a.c.k;
import a.c.m;
import a.c.n;
import a.c.u;
import a.c.w;
import a.i.db;
import a.j.a.j;

import java.util.*;

public class cd
{
  private static final Object a = "y.view.ModelViewManager.MANAGER_KEY";
  private static final Object b = "y.view.ModelViewManager.MODEL_KEY";
  private static final Object c = "y.view.ModelViewManager.MODEL_2_VIEW_EDGES";
  private static final Object d = "y.view.ModelViewManager.MODEL_2_VIEW_NODES";
  private static final Object e = "y.view.ModelViewManager.VIEW_2_MODEL_EDGES";
  private static final Object f = "y.view.ModelViewManager.VIEW_2_MODEL_NODES";
  private final a.c.q g;
  private final v_ h;
  private final x_ i = new x_(new g_()
  {
    public void a(cd.h_ paramAnonymoush_)
    {
      cd.this.c(paramAnonymoush_);
    }
  });
  private final x_ j = new x_(new g_()
  {
    public void a(cd.h_ paramAnonymoush_)
    {
      cd.this.a(paramAnonymoush_);
    }
  });
  private final List k;
  private final Map l;
  private boolean m;
  private v_ n;
  private boolean o;
  public static boolean p;
  
  private cd(a.c.q paramq)
  {
    this.g = paramq;
    this.g.a(this.i);
    this.h = new v_(this.g.e());
    this.m = true;
    this.k = new ArrayList(2);
    this.l = new HashMap();
    this.n = new v_(null);
  }
  
  public a.c.q a()
  {
    return this.g;
  }
  
  public a.c.q a(x.a_ parama_, y_ paramy_, boolean paramBoolean)
  {
    return a(parama_, paramy_, paramBoolean, true);
  }
  
  public a.c.q a(x.a_ parama_, y_ paramy_, boolean paramBoolean1, boolean paramBoolean2)
  {
    return a(null, parama_, paramy_, paramBoolean1, paramBoolean2, true);
  }
  
  public void a(a.c.q paramq, y_ paramy_, boolean paramBoolean)
  {
    a(paramq, paramy_, paramBoolean, true);
  }
  
  public void a(a.c.q paramq, y_ paramy_, boolean paramBoolean1, boolean paramBoolean2)
  {
    if (paramq == null) {
      throw new IllegalArgumentException("null");
    }
    if (!ld.E) {
      if (a(paramq, b) != null) {
        throw new IllegalArgumentException("view already associated to a model");
      }
    }
    a(paramq, paramq.e(), paramy_, paramBoolean1, paramBoolean2, false);
  }
  
  private a.c.q a(a.c.q paramq, x.a_ parama_, y_ paramy_, boolean paramBoolean1, boolean paramBoolean2, boolean paramBoolean3)
  {
    boolean bool = ld.E;
    v_ localv_ = parama_ != null ? new v_(parama_) : this.n;
    if (!bool)
    {
      if (paramq == null) {
        paramq = localv_.a();
      }
      paramq.a(localv_.c());
      paramq.a(b, a.i.q.a(this.g));
      paramq.a(c, db.b(new WeakHashMap()));
      paramq.a(d, db.a(new WeakHashMap()));
      paramq.a(e, db.b(new WeakHashMap()));
    }
    paramq.a(f, db.a(new WeakHashMap()));
    if (!bool) {
      if (paramBoolean3) {
        new z_(localv_, paramy_).a(this.g, paramq);
      }
    }
    if (!bool) {
      if (paramBoolean1) {
        paramq.a(this.j);
      }
    }
    this.k.add(paramq);
    this.l.put(paramq, new w_(localv_, paramy_, paramBoolean1, paramBoolean2));
    return paramq;
  }
  
  public void a(a.c.q paramq)
  {
    if (!ld.E)
    {
      if (paramq == null) {
        return;
      }
      l(paramq);
      i(paramq);
    }
    this.l.remove(paramq);
    this.k.remove(paramq);
  }
  
  public Iterator b()
  {
    new Iterator()
    {
      private final Iterator a = cd.this.k.iterator();
      
      public boolean hasNext()
      {
        return this.a.hasNext();
      }
      
      public Object next()
      {
        return this.a.next();
      }
      
      public void remove()
      {
        throw new UnsupportedOperationException();
      }
    };
  }
  
  public boolean b(a.c.q paramq)
  {
    return this.l.containsKey(paramq);
  }
  
  public Iterator a(d paramd)
  {
    new d_(paramd)
    {
      private final d val$model;
      
      Object a(a.c.q paramAnonymousq)
      {
        return cd.this.a(cd.this.g, this.val$model, paramAnonymousq);
      }
    };
  }
  
  public Iterator a(e parame)
  {
    new d_(parame)
    {
      private final e val$model;
      
      Object a(a.c.q paramAnonymousq)
      {
        return cd.this.a(cd.this.g, this.val$model, paramAnonymousq);
      }
    };
  }
  
  public x.a_ c()
  {
    return this.n.c();
  }
  
  public void a(x.a_ parama_)
  {
    this.n = new v_(parama_);
  }
  
  public d a(d paramd, a.c.q paramq)
  {
    l(paramq);
    return a(this.g, paramd, paramq);
  }
  
  public d b(d paramd)
  {
    a.c.q localq = paramd.c();
    if (!ld.E)
    {
      if (localq != null) {
        l(localq);
      }
    }
    else {
      return a(localq, paramd, this.g);
    }
    throw new IllegalArgumentException("view does not belong to a graph");
  }
  
  public e a(e parame, a.c.q paramq)
  {
    l(paramq);
    return a(this.g, parame, paramq);
  }
  
  public e b(e parame)
  {
    a.c.q localq = parame.g();
    if (!ld.E)
    {
      if (localq != null) {
        l(localq);
      }
    }
    else {
      return a(localq, parame, this.g);
    }
    throw new IllegalArgumentException("view does not belong to a graph");
  }
  
  public e a(boolean paramBoolean)
  {
    if (!ld.E) {
      if (paramBoolean) {
        return this.g.i();
      }
    }
    boolean bool = this.i.a();
    e locale;
    try
    {
      this.i.a(false);
      locale = this.g.i();
    }
    finally
    {
      this.i.a(bool);
    }
    return locale;
  }
  
  public d a(e parame1, e parame2, boolean paramBoolean)
  {
    boolean bool2 = ld.E;
    if ((bool2) || ((parame1 == null) || (parame2 == null))) {
      throw new IllegalArgumentException("null");
    }
    if (!bool2) {
      if (paramBoolean) {
        return this.g.a(parame1, parame2);
      }
    }
    boolean bool1 = this.i.a();
    d locald;
    try
    {
      this.i.a(false);
      locald = this.g.a(parame1, parame2);
    }
    finally
    {
      this.i.a(bool1);
    }
    return locald;
  }
  
  public e a(a.c.q paramq, boolean paramBoolean)
  {
    boolean bool2 = ld.E;
    if (!bool2)
    {
      if (paramq == null) {
        throw new IllegalArgumentException("null");
      }
      l(paramq);
    }
    w_ localw_ = (w_)this.l.get(paramq);
    if ((bool2) || (localw_.c != paramBoolean))
    {
      boolean bool1 = this.i.a();
      e locale;
      if (!bool2) {
        if (paramBoolean) {
          try
          {
            paramq.a(this.j);
            this.j.a(true);
            locale = paramq.i();
          }
          finally
          {
            this.j.a(bool1);
            paramq.b(this.j);
          }
        }
      }
      try
      {
        this.j.a(false);
        locale = paramq.i();
      }
      finally
      {
        this.j.a(bool1);
      }
      return locale;
    }
    return paramq.i();
  }
  
  public d b(e parame1, e parame2, boolean paramBoolean)
  {
    boolean bool = ld.E;
    if ((bool) || (parame1 != null))
    {
      if (bool) {
        break label34;
      }
      if (parame2 != null) {}
    }
    else
    {
      throw new IllegalArgumentException("null");
    }
    label34:
    a.c.q localq = parame1.g();
    if (!bool)
    {
      if (localq != null) {
        l(localq);
      }
    }
    else
    {
      w_ localw_ = (w_)this.l.get(localq);
      if ((bool) || (localw_.c != paramBoolean))
      {
        d locald;
        if (paramBoolean) {
          try
          {
            localq.a(this.j);
            locald = localq.a(parame1, parame2);
          }
          finally
          {
            localq.b(this.j);
          }
        } else {
          try
          {
            localq.b(this.j);
            locald = localq.a(parame1, parame2);
          }
          finally
          {
            localq.a(this.j);
          }
        }
        return locald;
      }
      return localq.a(parame1, parame2);
    }
    throw new IllegalArgumentException("source node does not belong to a graph");
  }
  
  public void a(d paramd, boolean paramBoolean)
  {
    boolean bool2 = ld.E;
    if (!bool2) {
      if (paramBoolean)
      {
        this.g.a(paramd);
        if ((!bool2) && (!ld.D)) {
          return;
        }
      }
    }
    boolean bool1 = this.i.a();
    try
    {
      this.i.a(false);
      this.g.a(paramd);
    }
    finally
    {
      this.i.a(bool1);
    }
  }
  
  public void a(e parame, boolean paramBoolean)
  {
    boolean bool2 = ld.E;
    if (!bool2) {
      if (paramBoolean)
      {
        this.g.a(parame);
        if ((!bool2) && (!ld.D)) {
          return;
        }
      }
    }
    boolean bool1 = this.i.a();
    try
    {
      this.i.a(false);
      this.g.a(parame);
    }
    finally
    {
      this.i.a(bool1);
    }
  }
  
  public void b(d paramd, boolean paramBoolean)
  {
    boolean bool = ld.E;
    a.c.q localq = paramd.c();
    if (!bool)
    {
      if (localq != null) {
        l(localq);
      }
    }
    else
    {
      w_ localw_ = (w_)this.l.get(localq);
      if (!bool)
      {
        if (localw_.c != paramBoolean)
        {
          if (paramBoolean) {
            try
            {
              localq.a(this.j);
              localq.a(paramd);
            }
            finally
            {
              localq.b(this.j);
            }
          }
          try
          {
            localq.b(this.j);
            localq.a(paramd);
          }
          finally
          {
            localq.a(this.j);
          }
        }
        localq.a(paramd);
      }
      if (!ld.D) {
        return;
      }
    }
    throw new IllegalArgumentException("edge does not belong to a graph");
  }
  
  public void b(e parame, boolean paramBoolean)
  {
    boolean bool = ld.E;
    a.c.q localq = parame.g();
    if (!bool)
    {
      if (localq != null) {
        l(localq);
      }
    }
    else
    {
      w_ localw_ = (w_)this.l.get(localq);
      if (!bool)
      {
        if (localw_.c != paramBoolean)
        {
          if (paramBoolean) {
            try
            {
              localq.a(this.j);
              localq.a(parame);
            }
            finally
            {
              localq.b(this.j);
            }
          }
          try
          {
            localq.b(this.j);
            localq.a(parame);
          }
          finally
          {
            localq.a(this.j);
          }
        }
        localq.a(parame);
      }
      if (!ld.D) {
        return;
      }
    }
    throw new IllegalArgumentException("node does not belong to a graph");
  }
  
  public void a(e parame1, e parame2)
  {
    if (!c(parame1)) {
      throw new IllegalArgumentException("model node not in model graph");
    }
    a.c.q localq = parame2.g();
    if (!ld.E)
    {
      if (localq != null)
      {
        l(localq);
        ((a.c.x)a(localq, d)).a(parame1, parame2);
        ((a.c.x)a(localq, f)).a(parame2, parame1);
      }
    }
    else if (!ld.D) {
      return;
    }
    throw new IllegalArgumentException("view node does not belong to a graph");
  }
  
  public void a(d paramd1, d paramd2)
  {
    if (!c(paramd1)) {
      throw new IllegalArgumentException("model edge not in model graph");
    }
    a.c.q localq = paramd2.c();
    if (!ld.E)
    {
      if (localq != null)
      {
        l(localq);
        ((n)a(localq, c)).a(paramd1, paramd2);
        ((n)a(localq, e)).a(paramd2, paramd1);
      }
    }
    else if (!ld.D) {
      return;
    }
    throw new IllegalArgumentException("view edge does not belong to a graph");
  }
  
  public void d()
  {
    c(new k_(this.g));
  }
  
  public void c(a.c.q paramq)
  {
    if (paramq == null) {
      throw new IllegalArgumentException("null");
    }
    l(paramq);
    this.j.a(false);
    k_ localk_ = new k_(this.g);
    if (!ld.E)
    {
      if (localk_.a(paramq)) {
        localk_.b(paramq);
      }
      this.j.a(true);
    }
  }
  
  public void a(w paramw, m paramm, a.c.q paramq)
  {
    boolean bool2 = ld.E;
    boolean bool1 = ld.D;
    if (!bool2)
    {
      if (paramq == null) {
        throw new IllegalArgumentException("null");
      }
      l(paramq);
      this.j.a(false);
    }
    paramq.o();
    p_ localp_ = new p_(this.g);
    do
    {
      do
      {
        if (!paramw.e()) {
          break;
        }
        localObject = paramw.d();
        if (bool1) {
          break label147;
        }
        if (((e)localObject).g() != this.g) {
          throw new IllegalArgumentException("model node not in model graph");
        }
        localp_.a((e)localObject);
        paramw.f();
      } while (!bool1);
      if (bool2) {
        break;
      }
    } while (bool2);
    if (localp_.a(paramq)) {
      localp_.b(paramq);
    }
    label147:
    Object localObject = new r_(this.g);
    do
    {
      do
      {
        if (!paramm.e()) {
          break;
        }
        d locald = paramm.a();
        if (bool1) {
          return;
        }
        if (locald.c() != this.g) {
          throw new IllegalArgumentException("model edge not in model graph");
        }
        ((r_)localObject).a(locald);
        paramm.f();
      } while (!bool1);
      if (bool2) {
        break;
      }
    } while (bool2);
    if (((r_)localObject).a(paramq)) {
      ((r_)localObject).b(paramq);
    }
    this.j.a(true);
  }
  
  public void d(a.c.q paramq)
  {
    if (paramq == null) {
      throw new IllegalArgumentException("null");
    }
    l(paramq);
    a(new k_(paramq));
  }
  
  private boolean c(d paramd)
  {
    j localj = ((g)paramd.c()).K();
    if ((g()) && ((ld.E) || (localj != null))) {
      return localj.e(paramd.c());
    }
    return paramd.c() == this.g;
  }
  
  private boolean c(e parame)
  {
    j localj = ((g)parame.g()).K();
    if ((g()) && ((ld.E) || (localj != null))) {
      return localj.e(parame.g());
    }
    return parame.g() == this.g;
  }
  
  public boolean e(a.c.q paramq)
  {
    if (!ld.E)
    {
      if (paramq == null) {
        throw new IllegalArgumentException("null");
      }
      l(paramq);
    }
    return ((w_)this.l.get(paramq)).c;
  }
  
  public void b(a.c.q paramq, boolean paramBoolean)
  {
    boolean bool = ld.E;
    if (!bool)
    {
      if (paramq == null) {
        throw new IllegalArgumentException("null");
      }
      l(paramq);
    }
    w_ localw_ = (w_)this.l.get(paramq);
    if ((bool) || (localw_.c != paramBoolean))
    {
      if (!bool)
      {
        if (paramBoolean)
        {
          if (bool) {
            break label89;
          }
          paramq.a(this.j);
        }
      }
      else {
        if (!ld.D) {
          break label92;
        }
      }
      label89:
      paramq.b(this.j);
      label92:
      localw_.c = paramBoolean;
    }
  }
  
  public boolean f(a.c.q paramq)
  {
    if (!ld.E)
    {
      if (paramq == null) {
        throw new IllegalArgumentException("null");
      }
      l(paramq);
    }
    return ((w_)this.l.get(paramq)).e;
  }
  
  public void c(a.c.q paramq, boolean paramBoolean)
  {
    if (!ld.E)
    {
      if (paramq == null) {
        throw new IllegalArgumentException("null");
      }
      l(paramq);
    }
    ((w_)this.l.get(paramq)).e = paramBoolean;
  }
  
  public boolean e()
  {
    return this.m;
  }
  
  public void b(boolean paramBoolean)
  {
    boolean bool = ld.E;
    if ((bool) || (this.m != paramBoolean))
    {
      if (!bool)
      {
        if (paramBoolean)
        {
          if (bool) {
            break label57;
          }
          this.g.a(this.i);
        }
      }
      else {
        if (!ld.D) {
          break label56;
        }
      }
      this.g.b(this.i);
      label56:
      label57:
      this.m = paramBoolean;
    }
  }
  
  public y_ g(a.c.q paramq)
  {
    if (!ld.E)
    {
      if (paramq == null) {
        throw new IllegalArgumentException("null");
      }
      l(paramq);
    }
    return ((w_)this.l.get(paramq)).b;
  }
  
  public void a(a.c.q paramq, y_ paramy_)
  {
    if (!ld.E)
    {
      if (paramq == null) {
        throw new IllegalArgumentException("null");
      }
      l(paramq);
    }
    ((w_)this.l.get(paramq)).b = paramy_;
  }
  
  public x.a_ h(a.c.q paramq)
  {
    if (!ld.E)
    {
      if (paramq == null) {
        throw new IllegalArgumentException("null");
      }
      l(paramq);
    }
    return ((w_)this.l.get(paramq)).a.c();
  }
  
  public void a(a.c.q paramq, x.a_ parama_)
  {
    if (!ld.E)
    {
      if (paramq == null) {
        throw new IllegalArgumentException("null");
      }
      l(paramq);
    }
    ((w_)this.l.get(paramq)).a = (parama_ != null ? new v_(parama_) : this.n);
  }
  
  public void f()
  {
    boolean bool2 = ld.E;
    boolean bool1 = ld.D;
    this.g.b(this.i);
    this.g.j(a);
    Iterator localIterator = this.k.iterator();
    if (localIterator.hasNext()) {}
    do
    {
      a.c.q localq = (a.c.q)localIterator.next();
      i(localq);
      if ((!bool2) && (bool1)) {
        return;
      }
      if (!bool1) {
        break;
      }
      this.l.clear();
    } while (bool2);
    this.k.clear();
  }
  
  private void i(a.c.q paramq)
  {
    paramq.b(this.j);
    paramq.j(b);
    paramq.j(c);
    paramq.j(d);
    paramq.j(e);
    paramq.j(f);
  }
  
  private void a(h_ paramh_)
  {
    this.i.a(false);
    this.g.z();
    j_ localj_ = new j_(((i_)paramh_).a, paramh_.c(this.g));
    this.g.A();
    this.i.a(true);
    c(localj_);
  }
  
  private void c(h_ paramh_)
  {
    boolean bool2 = ld.E;
    boolean bool1 = ld.D;
    this.j.a(false);
    Iterator localIterator = this.k.iterator();
    label86:
    do
    {
      a.c.q localq;
      do
      {
        int i1;
        do
        {
          if (!localIterator.hasNext()) {
            break;
          }
          localq = (a.c.q)localIterator.next();
          w_ localw_ = (w_)this.l.get(localq);
          if ((bool2) || (localw_ != null)) {
            if (bool2) {
              break label86;
            }
          }
          i1 = localw_.e ? 1 : 0;
        } while (i1 == 0);
        if (bool2) {
          break;
        }
      } while (!paramh_.a(localq));
      localq.z();
      paramh_.b(localq);
      localq.A();
      if (bool2) {
        return;
      }
    } while (!bool1);
    this.j.a(true);
  }
  
  private x.a_ j(a.c.q paramq)
  {
    boolean bool = ld.E;
    if (!bool) {
      if (paramq == this.g) {
        return this.h;
      }
    }
    w_ localw_ = (w_)this.l.get(paramq);
    if ((bool) || (localw_ != null))
    {
      if (bool) {
        break label63;
      }
      if (localw_.a != null) {
        return localw_.a;
      }
    }
    label63:
    return this.n;
  }
  
  private y_ k(a.c.q paramq)
  {
    boolean bool = ld.E;
    if (!bool) {
      if (paramq == this.g) {
        return null;
      }
    }
    w_ localw_ = (w_)this.l.get(paramq);
    if ((bool) || (localw_ != null)) {
      return localw_.b;
    }
    return null;
  }
  
  private e a(a.c.q paramq1, e parame, a.c.q paramq2)
  {
    e locale = c(paramq1, parame, paramq2);
    if (((ld.E) || (locale != null)) && (locale.g() != null) && (a(locale.g(), paramq2))) {
      return locale;
    }
    return null;
  }
  
  private e c(a.c.q paramq1, e parame, a.c.q paramq2)
  {
    boolean bool = ld.E;
    if (!bool)
    {
      if (paramq1 == this.g) {
        return (e)a(paramq2, d).get(parame);
      }
      if (bool) {}
    }
    else if (paramq2 == this.g)
    {
      return (e)a(paramq1, f).get(parame);
    }
    return (e)a(paramq2, d).get(a(paramq1, f).get(parame));
  }
  
  private d a(a.c.q paramq1, d paramd, a.c.q paramq2)
  {
    d locald = c(paramq1, paramd, paramq2);
    if (((ld.E) || (locald != null)) && (locald.c() != null) && (a(locald.c(), paramq2))) {
      return locald;
    }
    return null;
  }
  
  private d c(a.c.q paramq1, d paramd, a.c.q paramq2)
  {
    boolean bool = ld.E;
    if (!bool)
    {
      if (paramq1 == this.g) {
        return (d)a(paramq2, c).get(paramd);
      }
      if (bool) {}
    }
    else if (paramq2 == this.g)
    {
      return (d)a(paramq1, e).get(paramd);
    }
    return (d)a(paramq2, c).get(a(paramq1, e).get(paramd));
  }
  
  private boolean a(a.c.q paramq1, a.c.q paramq2)
  {
    j localj = j.a(paramq1);
    if ((g()) && ((ld.E) || (localj != null))) {
      return localj.e(paramq2);
    }
    return paramq1 == paramq2;
  }
  
  private k a(a.c.q paramq, Object paramObject)
  {
    boolean bool2 = ld.E;
    boolean bool1 = ld.D;
    k localk = paramq.c(paramObject);
    if ((localk == null) && (g()))
    {
      j localj = j.a(paramq);
      if (localj != null)
      {
        Iterator localIterator = this.k.iterator();
        while (localIterator.hasNext())
        {
          a.c.q localq = (a.c.q)localIterator.next();
          if (localj.e(localq))
          {
            if ((bool2) || (bool1)) {
              break label102;
            }
            localk = localq.c(paramObject);
          }
        }
      }
    }
    label102:
    return localk;
  }
  
  private void l(a.c.q paramq)
  {
    boolean bool2 = ld.E;
    boolean bool1 = ld.D;
    if (!bool2) {
      if (g())
      {
        int i1 = 1;
        Iterator localIterator = this.k.iterator();
        while (localIterator.hasNext())
        {
          a.c.q localq = (a.c.q)localIterator.next();
          if (!bool2) {
            if (localq == paramq)
            {
              i1 = 0;
              if (!bool1) {
                break;
              }
            }
          }
          j localj = j.a(paramq);
          if (localj != null)
          {
            if ((bool2) || (bool1)) {
              break label108;
            }
            if (localj.e(paramq)) {
              i1 = 0;
            }
          }
        }
        if (i1 == 0) {
          label108:
          return;
        }
        throw new IllegalArgumentException("not a view of model");
      }
    }
    if (!this.l.containsKey(paramq)) {
      throw new IllegalArgumentException("not a view of model");
    }
  }
  
  public static cd m(a.c.q paramq)
  {
    boolean bool = ld.E;
    if (!bool) {
      if (paramq == null) {
        throw new IllegalArgumentException("null");
      }
    }
    k localk = paramq.c(a);
    if ((bool) || (localk != null)) {
      return (cd)localk.get(paramq);
    }
    cd localcd = new cd(paramq);
    paramq.a(a, a.i.q.a(localcd));
    return localcd;
  }
  
  public static boolean n(a.c.q paramq)
  {
    boolean bool = ld.E;
    if (!bool) {
      if (paramq == null) {
        throw new IllegalArgumentException("null");
      }
    }
    k localk = paramq.c(a);
    if ((bool) || (localk != null)) {
      if (bool) {}
    }
    return (localk.get(paramq) instanceof cd);
  }
  
  public boolean g()
  {
    return this.o;
  }
  
  public void c(boolean paramBoolean)
  {
    this.o = paramBoolean;
  }
  
  private final class z_
    extends a.i.x
  {
    private final cd.y_ g;
    
    z_(x.a_ parama_, cd.y_ paramy_)
    {
      super();
      this.g = paramy_;
    }
    
    protected w c(a.c.q paramq)
    {
      boolean bool2 = ld.E;
      boolean bool1 = ld.D;
      bb localbb = new bb();
      w localw = paramq.v();
      do
      {
        if (!localw.e()) {
          break;
        }
        if (bool1) {
          break label101;
        }
        e locale = localw.d();
        if (((!bool2) && (this.g == null)) || ((bool2) || (this.g.a(locale)))) {
          localbb.add(locale);
        }
        localw.f();
      } while (!bool1);
      label101:
      return localbb.l();
    }
    
    protected m b(a.c.q paramq)
    {
      boolean bool2 = ld.E;
      boolean bool1 = ld.D;
      ab localab = new ab();
      m localm = paramq.w();
      do
      {
        if (!localm.e()) {
          break;
        }
        if (bool1) {
          break label101;
        }
        d locald = localm.a();
        if (((!bool2) && (this.g == null)) || ((bool2) || (this.g.a(locald)))) {
          localab.add(locald);
        }
        localm.f();
      } while (!bool1);
      label101:
      return localab.l();
    }
    
    void a(a.c.q paramq1, w paramw, a.c.q paramq2, bb parambb)
    {
      a(d(), paramq1, paramw, null, paramq2, parambb, null);
    }
    
    void a(a.c.q paramq1, m paramm, a.c.q paramq2, ab paramab)
    {
      a(d(), paramq1, null, paramm, paramq2, null, paramab);
    }
    
    void a(a.c.q paramq1, w paramw, m paramm, a.c.q paramq2, bb parambb, ab paramab)
    {
      a(d(), paramq1, paramw, paramm, paramq2, parambb, paramab);
    }
    
    private void a(x.a_ parama_, a.c.q paramq1, w paramw, m paramm, a.c.q paramq2, bb parambb, ab paramab)
    {
      boolean bool2 = ld.E;
      boolean bool1 = ld.D;
      a(parama_, paramq1, paramq2);
      Map localMap = f();
      Object localObject2;
      if ((bool2) || (paramw != null)) {
        do
        {
          if (!paramw.e()) {
            break;
          }
          localObject1 = paramw.d();
          if (bool1) {
            break label152;
          }
          if (((!bool2) && ((this.g != null) && (bool2))) || (this.g.a((e)localObject1)))
          {
            localObject2 = a(parama_, paramq2, (e)localObject1);
            if (bool2) {
              continue;
            }
            if (localObject2 != null)
            {
              localMap.put(localObject1, localObject2);
              if (bool2) {
                continue;
              }
              if (parambb != null) {
                parambb.add(localObject2);
              }
            }
          }
          paramw.f();
        } while (!bool1);
      }
      label152:
      Object localObject1 = e();
      if ((bool2) || (paramm != null)) {
        do
        {
          if (!paramm.e()) {
            break;
          }
          localObject2 = paramm.a();
          if (bool2) {
            return;
          }
          if (bool1) {
            break label356;
          }
          if (((!bool2) && (this.g == null)) || (this.g.a((d)localObject2)))
          {
            e locale1 = ((d)localObject2).e();
            e locale2 = ((d)localObject2).f();
            e locale3 = a(paramq1, locale1, paramq2, localMap);
            e locale4 = a(paramq1, locale2, paramq2, localMap);
            if (bool2) {
              continue;
            }
            if ((locale3 != null) && (locale4 != null))
            {
              d locald = a(parama_, paramq2, locale3, locale4, (d)localObject2);
              if (bool2) {
                continue;
              }
              if (locald != null)
              {
                ((Map)localObject1).put(localObject2, locald);
                if (bool2) {
                  continue;
                }
                if (paramab != null) {
                  paramab.add(locald);
                }
              }
            }
          }
          paramm.f();
        } while (!bool1);
      }
      if (!bool2) {
        label356:
        a(parama_, paramq1, paramq2, localMap, (Map)localObject1);
      }
    }
    
    private e a(a.c.q paramq1, e parame, a.c.q paramq2, Map paramMap)
    {
      e locale = (e)paramMap.get(parame);
      if (!ld.E) {
        if (locale != null) {
          return locale;
        }
      }
      return cd.this.a(paramq1, parame, paramq2);
    }
  }
  
  private final class v_
    implements x.a_
  {
    private final x.a_ a;
    private ab b;
    private bb c;
    
    v_(x.a_ parama_)
    {
      if (!ld.E) {}
      this.a = (parama_ != null ? parama_ : d());
      this.b = null;
      this.c = null;
    }
    
    public e a(a.c.q paramq, e parame)
    {
      this.c.add(parame);
      return this.a.a(paramq, parame);
    }
    
    public d a(a.c.q paramq, e parame1, e parame2, d paramd)
    {
      this.b.add(paramd);
      return this.a.a(paramq, parame1, parame2, paramd);
    }
    
    public a.c.q a()
    {
      return this.a.a();
    }
    
    public void a(a.c.q paramq1, a.c.q paramq2)
    {
      this.a.a(paramq1, paramq2);
      this.b = new ab();
      this.c = new bb();
    }
    
    public void a(a.c.q paramq1, a.c.q paramq2, Map paramMap1, Map paramMap2)
    {
      boolean bool2 = ld.E;
      boolean bool1 = ld.D;
      int i = paramq1 == cd.this.g ? 1 : 0;
      int j = paramq2 == cd.this.g ? 1 : 0;
      Object localObject1;
      Object localObject2;
      Object localObject3;
      Object localObject4;
      Object localObject5;
      Object localObject6;
      if (!bool2)
      {
        if (!this.c.isEmpty())
        {
          if (!bool2)
          {
            if (i != 0)
            {
              localObject1 = (a.c.x)cd.this.a(paramq2, cd.d);
              localObject2 = (a.c.x)cd.this.a(paramq2, cd.f);
              localObject3 = this.c.l();
              do
              {
                if (!((w)localObject3).e()) {
                  break;
                }
                localObject4 = ((w)localObject3).d();
                localObject5 = paramMap1.get(localObject4);
                ((a.c.x)localObject1).a(localObject4, localObject5);
                ((a.c.x)localObject2).a(localObject5, localObject4);
                ((w)localObject3).f();
                if ((!bool2) && (bool1)) {
                  return;
                }
              } while (!bool1);
            }
            if (bool2) {
              break label470;
            }
          }
          if (j != 0)
          {
            localObject1 = (a.c.x)cd.this.a(paramq1, cd.d);
            localObject2 = (a.c.x)cd.this.a(paramq1, cd.f);
            localObject3 = this.c.l();
            do
            {
              if (!((w)localObject3).e()) {
                break;
              }
              localObject4 = ((w)localObject3).d();
              localObject5 = paramMap1.get(localObject4);
              ((a.c.x)localObject1).a(localObject5, localObject4);
              ((a.c.x)localObject2).a(localObject4, localObject5);
              ((w)localObject3).f();
              if ((!bool2) && (bool1)) {
                return;
              }
            } while (!bool1);
          }
          localObject1 = cd.this.a(paramq1, cd.f);
          localObject2 = (a.c.x)cd.this.a(paramq2, cd.d);
          localObject3 = (a.c.x)cd.this.a(paramq2, cd.f);
          if (!bool2)
          {
            localObject4 = this.c.l();
            do
            {
              if (!((w)localObject4).e()) {
                break;
              }
              localObject5 = ((k)localObject1).get(((w)localObject4).d());
              localObject6 = paramMap1.get(((w)localObject4).d());
              ((a.c.x)localObject2).a(localObject5, localObject6);
              ((a.c.x)localObject3).a(localObject6, localObject5);
              ((w)localObject4).f();
              if ((!bool2) && (bool1)) {
                return;
              }
            } while (!bool1);
          }
        }
        else if (bool2)
        {
          return;
        }
        if (bool2) {
          break label890;
        }
      }
      if (!this.b.isEmpty())
      {
        label470:
        if (!bool2)
        {
          if (i != 0)
          {
            localObject1 = (n)cd.this.a(paramq2, cd.c);
            localObject2 = (n)cd.this.a(paramq2, cd.e);
            localObject3 = this.b.l();
            do
            {
              if (!((m)localObject3).e()) {
                break;
              }
              localObject4 = ((m)localObject3).a();
              localObject5 = paramMap2.get(localObject4);
              ((n)localObject1).a(localObject4, localObject5);
              ((n)localObject2).a(localObject5, localObject4);
              ((m)localObject3).f();
              if ((!bool2) && (bool1)) {
                return;
              }
            } while (!bool1);
          }
          if (bool2) {}
        }
        else
        {
          if (j != 0)
          {
            localObject1 = (n)cd.this.a(paramq1, cd.c);
            localObject2 = (n)cd.this.a(paramq1, cd.e);
            localObject3 = this.b.l();
            do
            {
              if (!((m)localObject3).e()) {
                break;
              }
              localObject4 = ((m)localObject3).a();
              localObject5 = paramMap2.get(localObject4);
              ((n)localObject1).a(localObject5, localObject4);
              ((n)localObject2).a(localObject4, localObject5);
              ((m)localObject3).f();
              if ((!bool2) && (bool1)) {
                return;
              }
            } while (!bool1);
          }
          localObject1 = (n)cd.this.a(paramq1, cd.e);
          localObject2 = (n)cd.this.a(paramq2, cd.c);
          localObject3 = (n)cd.this.a(paramq2, cd.e);
          if (bool2) {
            break label890;
          }
          localObject4 = this.b.l();
          do
          {
            if (!((m)localObject4).e()) {
              break;
            }
            localObject5 = ((n)localObject1).get(((m)localObject4).a());
            localObject6 = paramMap2.get(((m)localObject4).a());
            ((n)localObject2).a(localObject5, localObject6);
            ((n)localObject3).a(localObject6, localObject5);
            ((m)localObject4).f();
            if ((!bool2) && (bool1)) {
              return;
            }
          } while (!bool1);
        }
      }
      else
      {
        this.c = null;
        this.b = null;
        if (bool2) {
          return;
        }
      }
      label890:
      this.a.a(paramq1, paramq2, paramMap1, paramMap2);
    }
    
    x.a_ c()
    {
      return this.a;
    }
    
    private x.a_ d()
    {
      return new dc.b_();
    }
  }
  
  private static final class j_
    extends cd.i_
  {
    private final cd.h_ b;
    
    j_(a.c.q paramq, cd.h_ paramh_)
    {
      super();
      this.b = paramh_;
    }
    
    public cd.h_ c(a.c.q paramq)
    {
      return this.b.c(paramq);
    }
    
    public void b(a.c.q paramq)
    {
      this.b.b(paramq);
    }
  }
  
  private final class k_
    extends cd.i_
  {
    k_(a.c.q paramq)
    {
      super();
    }
    
    public cd.h_ c(a.c.q paramq)
    {
      d(paramq);
      return new k_(cd.this, paramq);
    }
    
    public void b(a.c.q paramq)
    {
      d(paramq);
    }
    
    private void d(a.c.q paramq)
    {
      boolean bool2 = ld.E;
      boolean bool1 = ld.D;
      cd.y_ localy_ = (bool2) || (this.a == cd.this.g) ? cd.this.k(paramq) : null;
      bb localbb = new bb();
      Object localObject1 = paramq.v();
      do
      {
        do
        {
          if (!((w)localObject1).e()) {
            break;
          }
          localObject2 = cd.this.a(paramq, ((w)localObject1).d(), this.a);
          if (bool2) {
            break label169;
          }
          if (bool1) {
            break label162;
          }
          if (localObject2 != null)
          {
            if ((bool2) || (localy_ != null))
            {
              if (bool2) {
                continue;
              }
              if (localy_.c((e)localObject2)) {}
            }
          }
          else {
            localbb.add(((w)localObject1).d());
          }
          ((w)localObject1).f();
        } while (!bool1);
      } while (bool2);
      localObject1 = localbb.l();
      label162:
      label169:
      do
      {
        while (!bool1)
        {
          if (!((w)localObject1).e()) {
            break;
          }
          paramq.a(((w)localObject1).d());
          ((w)localObject1).f();
        }
      } while (bool2);
      localObject1 = new ab();
      Object localObject2 = paramq.w();
      do
      {
        do
        {
          if (!((m)localObject2).e()) {
            break;
          }
          localObject3 = cd.this.a(paramq, ((m)localObject2).a(), this.a);
          if (bool2) {
            break label330;
          }
          if (bool1) {
            break label323;
          }
          if (localObject3 != null)
          {
            if ((bool2) || (localy_ != null))
            {
              if (bool2) {
                continue;
              }
              if (localy_.c((d)localObject3)) {}
            }
          }
          else {
            ((ab)localObject1).add(((m)localObject2).a());
          }
          ((m)localObject2).f();
        } while (!bool1);
      } while (bool2);
      localObject2 = ((ab)localObject1).l();
      label323:
      label330:
      do
      {
        while (!bool1)
        {
          if (!((m)localObject2).e()) {
            break;
          }
          paramq.a(((m)localObject2).a());
          ((m)localObject2).f();
        }
      } while (bool2);
      localObject2 = new bb();
      Object localObject3 = this.a.v();
      do
      {
        while (!bool1)
        {
          if (!((w)localObject3).e()) {
            break;
          }
          if (cd.this.a(this.a, ((w)localObject3).d(), paramq) == null) {
            if ((bool2) || (localy_ != null))
            {
              if (bool2) {
                continue;
              }
              if (!localy_.a(((w)localObject3).d())) {}
            }
            else
            {
              ((bb)localObject2).add(((w)localObject3).d());
            }
          }
          ((w)localObject3).f();
        }
      } while (bool2);
      localObject3 = new ab();
      Object localObject4 = this.a.w();
      if (((m)localObject4).e()) {}
      label578:
      while (bool2)
      {
        if (bool1) {
          break label591;
        }
        if (cd.this.a(this.a, ((m)localObject4).a(), paramq) == null) {
          if ((bool2) || (localy_ != null))
          {
            if (bool2) {
              break label578;
            }
            if (!localy_.a(((m)localObject4).a())) {}
          }
          else
          {
            ((ab)localObject3).add(((m)localObject4).a());
          }
        }
        ((m)localObject4).f();
        if (!bool1) {
          break;
        }
      }
      label591:
      localObject4 = cd.this.j(paramq);
      new cd.z_(cd.this, (x.a_)localObject4, localy_).a(this.a, ((bb)localObject2).l(), ((ab)localObject3).l(), paramq, null, null);
    }
  }
  
  private final class m_
    extends cd.l_
  {
    m_(a.c.q paramq)
    {
      super();
    }
    
    m_(a.c.q paramq, bb parambb)
    {
      super(parambb);
    }
    
    public void b(a.c.q paramq)
    {
      a(paramq, null);
    }
    
    public cd.h_ c(a.c.q paramq)
    {
      m_ localm_ = new m_(cd.this, paramq);
      a(paramq, localm_);
      return localm_;
    }
    
    private void a(a.c.q paramq, m_ paramm_)
    {
      boolean bool2 = ld.E;
      boolean bool1 = ld.D;
      HashSet localHashSet = new HashSet();
      bb localbb = new bb();
      Object localObject1 = this.b.l();
      label162:
      do
      {
        if (!((w)localObject1).e()) {
          break;
        }
        localObject2 = ((w)localObject1).d();
        if (!bool2)
        {
          if (bool1) {
            break label181;
          }
          localHashSet.add(localObject2);
        }
        localObject3 = cd.this.c(this.a, (e)localObject2, paramq);
        if ((bool2) || (localObject3 != null))
        {
          if (!bool2) {
            if (((e)localObject3).g() == null)
            {
              paramq.c((e)localObject3);
              if (bool2) {
                continue;
              }
              if (!bool1) {
                break label162;
              }
            }
          }
          if (((e)localObject3).g() != paramq)
          {
            localbb.add(localObject2);
            if (bool2) {
              continue;
            }
            if (!bool1) {}
          }
        }
        else
        {
          localbb.add(localObject2);
        }
        ((w)localObject1).f();
      } while (!bool1);
      label181:
      localObject1 = new HashSet();
      Object localObject2 = new ab();
      Object localObject3 = this.b.l();
      label462:
      label474:
      do
      {
        if (!((w)localObject3).e()) {
          break;
        }
        localObject4 = ((w)localObject3).d().l();
        do
        {
          do
          {
            if (!((m)localObject4).e()) {
              break label474;
            }
            d locald1 = ((m)localObject4).a();
            if (bool1) {
              break;
            }
            if ((!((HashSet)localObject1).contains(locald1)) && ((bool2) || (localHashSet.contains(locald1.a(((w)localObject3).d())))))
            {
              ((HashSet)localObject1).add(locald1);
              d locald2 = cd.this.a(this.a, locald1, paramq);
              if ((bool2) || (locald2 != null))
              {
                if (!bool2) {
                  if (locald2.c() == null)
                  {
                    e locale1 = locald2.e();
                    e locale2 = locald2.f();
                    if (!bool2)
                    {
                      if ((locale1 != null) && ((bool2) || (locale1.g() == paramq)) && ((bool2) || (locale2 != null)) && ((bool2) || (locale2.g() == paramq)))
                      {
                        paramq.d(locald2);
                        if (bool2) {
                          continue;
                        }
                        if (!bool1) {
                          break label462;
                        }
                      }
                      ((ab)localObject2).add(locald1);
                    }
                    if (bool2) {
                      continue;
                    }
                    if (!bool1) {
                      break label462;
                    }
                  }
                }
                if (locald2.c() != paramq)
                {
                  ((ab)localObject2).add(locald1);
                  if (bool2) {
                    continue;
                  }
                  if (!bool1) {}
                }
              }
              else
              {
                ((ab)localObject2).add(locald1);
              }
            }
            ((m)localObject4).f();
          } while (!bool1);
          ((w)localObject3).f();
        } while (bool2);
      } while (!bool1);
      localObject3 = cd.this.j(paramq);
      Object localObject4 = cd.this.k(paramq);
      new cd.z_(cd.this, (x.a_)localObject3, (cd.y_)localObject4).a(this.a, localbb.l(), ((ab)localObject2).l(), paramq, (bool2) || (paramm_ != null) ? paramm_.b : null, null);
    }
  }
  
  private final class s_
    extends cd.q_
  {
    s_(a.c.q paramq)
    {
      super();
    }
    
    s_(a.c.q paramq, d paramd)
    {
      super(paramd);
    }
    
    public void b(a.c.q paramq)
    {
      a(paramq, null);
    }
    
    public cd.h_ c(a.c.q paramq)
    {
      s_ locals_ = new s_(cd.this, paramq);
      a(paramq, locals_);
      return locals_;
    }
    
    private void a(a.c.q paramq, s_ params_)
    {
      boolean bool2 = ld.E;
      boolean bool1 = ld.D;
      m localm = this.b.l();
      do
      {
        if (!localm.e()) {
          break;
        }
        d locald1 = localm.a();
        d locald2 = cd.this.a(this.a, locald1, paramq);
        if (!bool2)
        {
          if (locald2 != null)
          {
            e locale1 = cd.this.a(this.a, locald1.e(), paramq);
            e locale2 = cd.this.a(this.a, locald1.f(), paramq);
            if ((bool2) || ((locale1 != null) && (locale2 != null)))
            {
              paramq.a(locald2, locale1, locale2);
              if (bool2) {
                continue;
              }
              if (params_ != null)
              {
                params_.a(locald2);
                if (bool2) {
                  continue;
                }
                if (!bool1) {}
              }
            }
            else
            {
              paramq.a(locald2);
            }
          }
          localm.f();
        }
      } while (!bool1);
    }
  }
  
  private final class n_
    extends cd.l_
  {
    n_(a.c.q paramq)
    {
      super();
    }
    
    n_(a.c.q paramq, e parame)
    {
      super(parame);
    }
    
    n_(a.c.q paramq, bb parambb)
    {
      super(parambb);
    }
    
    public cd.h_ c(a.c.q paramq)
    {
      n_ localn_ = new n_(cd.this, paramq);
      a(paramq, localn_);
      return localn_;
    }
    
    public void b(a.c.q paramq)
    {
      a(paramq, null);
    }
    
    private void a(a.c.q paramq, n_ paramn_)
    {
      boolean bool2 = ld.E;
      boolean bool1 = ld.D;
      cd.y_ localy_ = cd.this.k(paramq);
      w localw = this.b.l();
      if (localw.e()) {
        if (((bool2) || (localy_ != null)) && (!localy_.b(localw.d()))) {}
      }
      label125:
      while (bool2)
      {
        e locale = cd.this.a(this.a, localw.d(), paramq);
        if (!bool2)
        {
          if (locale != null)
          {
            paramq.a(locale);
            if (bool2) {
              break label125;
            }
            if (paramn_ != null) {
              paramn_.a(locale);
            }
          }
          localw.f();
        }
        if (!bool1) {
          break;
        }
      }
    }
  }
  
  private final class u_
    extends cd.q_
  {
    u_(a.c.q paramq)
    {
      super();
    }
    
    u_(a.c.q paramq, d paramd)
    {
      super(paramd);
    }
    
    public cd.h_ c(a.c.q paramq)
    {
      u_ localu_ = new u_(cd.this, paramq);
      a(paramq, localu_);
      return localu_;
    }
    
    public void b(a.c.q paramq)
    {
      a(paramq, null);
    }
    
    private void a(a.c.q paramq, u_ paramu_)
    {
      boolean bool2 = ld.E;
      boolean bool1 = ld.D;
      cd.y_ localy_ = cd.this.k(paramq);
      m localm = this.b.l();
      if (localm.e()) {
        if (((bool2) || (localy_ != null)) && (!localy_.b(localm.a()))) {}
      }
      label125:
      while (bool2)
      {
        d locald = cd.this.a(this.a, localm.a(), paramq);
        if (!bool2)
        {
          if (locald != null)
          {
            paramq.a(locald);
            if (bool2) {
              break label125;
            }
            if (paramu_ != null) {
              paramu_.a(locald);
            }
          }
          localm.f();
        }
        if (!bool1) {
          break;
        }
      }
    }
  }
  
  private final class o_
    extends cd.l_
  {
    o_(a.c.q paramq)
    {
      super();
    }
    
    o_(a.c.q paramq, e parame)
    {
      super(parame);
    }
    
    public cd.h_ c(a.c.q paramq)
    {
      o_ localo_ = new o_(cd.this, paramq);
      a(paramq, localo_);
      return localo_;
    }
    
    public void b(a.c.q paramq)
    {
      a(paramq, null);
    }
    
    private void a(a.c.q paramq, o_ paramo_)
    {
      boolean bool2 = ld.E;
      boolean bool1 = ld.D;
      bb localbb = new bb();
      Object localObject1 = this.b.l();
      Object localObject2;
      label134:
      do
      {
        do
        {
          if (!((w)localObject1).e()) {
            break;
          }
          localObject2 = ((w)localObject1).d();
          e locale = cd.this.c(this.a, (e)localObject2, paramq);
          if (bool1) {
            break label257;
          }
          if (locale != null)
          {
            if (!bool2) {
              if (locale.g() == null)
              {
                paramq.c(locale);
                if (bool2) {
                  continue;
                }
                if (!bool1) {
                  break label134;
                }
              }
            }
            if (locale.g() != paramq)
            {
              localbb.add(localObject2);
              if (bool2) {
                continue;
              }
              if (!bool1) {}
            }
          }
          else
          {
            localbb.add(localObject2);
          }
          ((w)localObject1).f();
        } while (!bool1);
      } while (bool2);
      if (!localbb.isEmpty())
      {
        localObject1 = cd.this.j(paramq);
        localObject2 = cd.this.k(paramq);
        new cd.z_(cd.this, (x.a_)localObject1, (cd.y_)localObject2).a(this.a, localbb.l(), paramq, null);
      }
      if ((bool2) || (paramo_ != null))
      {
        localObject1 = this.b.l();
        label257:
        do
        {
          if (!((w)localObject1).e()) {
            break;
          }
          localObject2 = cd.this.a(this.a, ((w)localObject1).d(), paramq);
          if (localObject2 != null) {
            paramo_.a((e)localObject2);
          }
          ((w)localObject1).f();
        } while (!bool1);
      }
    }
  }
  
  private final class t_
    extends cd.q_
  {
    t_(a.c.q paramq)
    {
      super();
    }
    
    t_(a.c.q paramq, d paramd)
    {
      super(paramd);
    }
    
    public cd.h_ c(a.c.q paramq)
    {
      t_ localt_ = new t_(cd.this, paramq);
      a(paramq, localt_);
      return localt_;
    }
    
    public void b(a.c.q paramq)
    {
      a(paramq, null);
    }
    
    private void a(a.c.q paramq, t_ paramt_)
    {
      boolean bool2 = ld.E;
      boolean bool1 = ld.D;
      ab localab = new ab();
      Object localObject1 = this.b.l();
      Object localObject2;
      label213:
      do
      {
        do
        {
          if (!((m)localObject1).e()) {
            break;
          }
          localObject2 = ((m)localObject1).a();
          d locald = cd.this.c(this.a, (d)localObject2, paramq);
          if (bool1) {
            break label336;
          }
          if (locald != null)
          {
            if (!bool2) {
              if (locald.c() == null)
              {
                e locale1 = locald.e();
                e locale2 = locald.f();
                if (!bool2)
                {
                  if ((locale1 != null) && ((bool2) || (locale1.g() == paramq)) && ((bool2) || (locale2 != null)) && ((bool2) || (locale2.g() == paramq)))
                  {
                    paramq.d(locald);
                    if (bool2) {
                      continue;
                    }
                    if (!bool1) {
                      break label213;
                    }
                  }
                  localab.add(localObject2);
                }
                if (bool2) {
                  continue;
                }
                if (!bool1) {
                  break label213;
                }
              }
            }
            if (locald.c() != paramq)
            {
              localab.add(localObject2);
              if (bool2) {
                continue;
              }
              if (!bool1) {}
            }
          }
          else
          {
            localab.add(localObject2);
          }
          ((m)localObject1).f();
        } while (!bool1);
      } while (bool2);
      if (!localab.isEmpty())
      {
        localObject1 = cd.this.j(paramq);
        localObject2 = cd.this.k(paramq);
        new cd.z_(cd.this, (x.a_)localObject1, (cd.y_)localObject2).a(this.a, localab.l(), paramq, null);
      }
      if ((bool2) || (paramt_ != null))
      {
        localObject1 = this.b.l();
        label336:
        do
        {
          if (!((m)localObject1).e()) {
            break;
          }
          localObject2 = cd.this.a(this.a, ((m)localObject1).a(), paramq);
          if (localObject2 != null) {
            paramt_.a((d)localObject2);
          }
          ((m)localObject1).f();
        } while (!bool1);
      }
    }
  }
  
  private final class p_
    extends cd.l_
  {
    p_(a.c.q paramq)
    {
      super();
    }
    
    p_(a.c.q paramq, e parame)
    {
      super(parame);
    }
    
    public cd.h_ c(a.c.q paramq)
    {
      p_ localp_ = new p_(cd.this, paramq);
      a(paramq, localp_);
      return localp_;
    }
    
    public void b(a.c.q paramq)
    {
      a(paramq, null);
    }
    
    private void a(a.c.q paramq, p_ paramp_)
    {
      x.a_ locala_ = cd.this.j(paramq);
      cd.y_ localy_ = cd.this.k(paramq);
      new cd.z_(cd.this, locala_, localy_).a(this.a, this.b.l(), paramq, (ld.E) || (paramp_ != null) ? paramp_.b : null);
    }
  }
  
  private final class r_
    extends cd.q_
  {
    r_(a.c.q paramq)
    {
      super();
    }
    
    r_(a.c.q paramq, d paramd)
    {
      super(paramd);
    }
    
    public cd.h_ c(a.c.q paramq)
    {
      r_ localr_ = new r_(cd.this, paramq);
      a(paramq, localr_);
      return localr_;
    }
    
    public void b(a.c.q paramq)
    {
      a(paramq, null);
    }
    
    private void a(a.c.q paramq, r_ paramr_)
    {
      x.a_ locala_ = cd.this.j(paramq);
      cd.y_ localy_ = cd.this.k(paramq);
      new cd.z_(cd.this, locala_, localy_).a(this.a, this.b.l(), paramq, (ld.E) || (paramr_ != null) ? paramr_.b : null);
    }
  }
  
  private static abstract class l_
    extends cd.i_
  {
    final bb b;
    
    l_(a.c.q paramq)
    {
      super();
      this.b = new bb();
    }
    
    l_(a.c.q paramq, e parame)
    {
      super();
      this.b = new bb(parame);
    }
    
    l_(a.c.q paramq, bb parambb)
    {
      super();
      this.b = parambb;
    }
    
    void a(e parame)
    {
      this.b.add(parame);
    }
  }
  
  private static abstract class q_
    extends cd.i_
  {
    final ab b;
    
    q_(a.c.q paramq)
    {
      super();
      this.b = new ab();
    }
    
    q_(a.c.q paramq, d paramd)
    {
      super();
      this.b = new ab(paramd);
    }
    
    void a(d paramd)
    {
      this.b.add(paramd);
    }
  }
  
  private static abstract class i_
    implements cd.h_
  {
    final a.c.q a;
    
    i_(a.c.q paramq)
    {
      this.a = paramq;
    }
    
    public boolean a(a.c.q paramq)
    {
      return paramq != this.a;
    }
  }
  
  private static abstract interface h_
  {
    public abstract boolean a(a.c.q paramq);
    
    public abstract void b(a.c.q paramq);
    
    public abstract h_ c(a.c.q paramq);
  }
  
  private static abstract interface g_
  {
    public abstract void a(cd.h_ paramh_);
  }
  
  private final class x_
    implements u
  {
    private final cd.g_ a;
    private boolean b;
    
    x_(cd.g_ paramg_)
    {
      this.a = paramg_;
      this.b = true;
    }
    
    public void a(cb paramcb)
    {
      boolean bool2 = ld.E;
      boolean bool1 = ld.D;
      if ((bool2) || (this.b))
      {
        if (bool2) {
          break label39;
        }
        if (a(paramcb.c())) {}
      }
      else
      {
        return;
      }
      label39:
      if (!bool2) {}
      switch (paramcb.a())
      {
      case 0: 
        this.a.a(new cd.p_(cd.this, paramcb.c(), (e)paramcb.b()));
        if (!bool2) {
          if (!bool1) {
            return;
          }
        }
      case 3: 
        this.a.a(new cd.n_(cd.this, paramcb.c(), (e)paramcb.b()));
        if (!bool2) {
          if (!bool1) {
            return;
          }
        }
      case 1: 
        this.a.a(new cd.r_(cd.this, paramcb.c(), (d)paramcb.b()));
        if (!bool2) {
          if (!bool1) {
            return;
          }
        }
      case 5: 
        this.a.a(new cd.u_(cd.this, paramcb.c(), (d)paramcb.b()));
        if (!bool2) {
          if (!bool1) {
            return;
          }
        }
      case 6: 
        this.a.a(new cd.o_(cd.this, paramcb.c(), (e)paramcb.b()));
        if (!bool2) {
          if (!bool1) {
            return;
          }
        }
      case 7: 
        this.a.a(new cd.t_(cd.this, paramcb.c(), (d)paramcb.b()));
        if (!bool2) {
          if (!bool1) {
            return;
          }
        }
      case 9: 
        this.a.a(new cd.s_(cd.this, paramcb.c(), (d)paramcb.b()));
        if (!bool2) {
          if (!bool1) {
            return;
          }
        }
      case 10: 
        this.a.a(new cd.m_(cd.this, paramcb.c(), (bb)paramcb.b()));
        if (!bool2) {
          if (!bool1) {
            return;
          }
        }
      case 11: 
        this.a.a(new cd.n_(cd.this, paramcb.c(), (bb)paramcb.b()));
        break;
      }
    }
    
    boolean a()
    {
      return this.b;
    }
    
    void a(boolean paramBoolean)
    {
      this.b = paramBoolean;
    }
    
    private boolean a(a.c.q paramq)
    {
      if (paramq != cd.this.g) {
        if (ld.E) {
          break label34;
        }
      }
      label34:
      return cd.this.l.containsKey(paramq);
    }
  }
  
  private abstract class d_
    implements Iterator
  {
    private boolean a;
    private Object b;
    private final Iterator c = cd.this.k.iterator();
    
    d_() {}
    
    public boolean hasNext()
    {
      if (!ld.E) {
        if (!this.a) {
          a();
        }
      }
      return this.a;
    }
    
    public Object next()
    {
      boolean bool = ld.E;
      if (!bool)
      {
        if (!this.a) {
          a();
        }
        if (bool) {}
      }
      else
      {
        if (!this.a) {
          break label40;
        }
        this.a = false;
      }
      return this.b;
      label40:
      throw new NoSuchElementException();
    }
    
    public void remove()
    {
      throw new UnsupportedOperationException();
    }
    
    abstract Object a(a.c.q paramq);
    
    private void a()
    {
      boolean bool2 = ld.E;
      boolean bool1 = ld.D;
      do
      {
        do
        {
          Object localObject;
          do
          {
            if (!this.c.hasNext()) {
              break;
            }
            if ((!bool2) && (this.a)) {
              break;
            }
            a.c.q localq = (a.c.q)this.c.next();
            localObject = a(localq);
          } while (localObject == null);
          this.b = localObject;
          this.a = true;
        } while (bool2);
      } while (!bool1);
    }
  }
  
  private static final class w_
  {
    cd.v_ a;
    cd.y_ b;
    boolean c;
    boolean e;
    
    w_(cd.v_ paramv_, cd.y_ paramy_, boolean paramBoolean1, boolean paramBoolean2)
    {
      this.a = paramv_;
      this.b = paramy_;
      this.c = paramBoolean1;
      this.e = paramBoolean2;
    }
  }
  
  public static abstract interface y_
  {
    public abstract boolean a(e parame);
    
    public abstract boolean a(d paramd);
    
    public abstract boolean b(e parame);
    
    public abstract boolean b(d paramd);
    
    public abstract boolean c(e parame);
    
    public abstract boolean c(d paramd);
  }
}



/* Location:           E:\idea\

 * Qualified Name:     a.j.cd

 * JD-Core Version:    0.7.0.1

 */